package com.softer.wxzj.service;

import com.github.pagehelper.PageInfo;
import com.softer.wxzj.common.entity.CommonResult;
import com.softer.wxzj.common.entity.Page;
import com.softer.wxzj.entity.*;
import com.softer.wxzj.service.base.BaseService;

import java.util.List;
import java.util.Map;

/**
 * BaseCellInfoService class
 * @author zcz
 * @date 2019/1/16
 */
public interface BaseCellInfoService extends BaseService<BaseCellInfo> {

    /**
     * 新增或替换
     * @param list
     * @return
     */
    CommonResult insertOrUpdate(List<BaseCellInfo> list);

    /**
     * 查询列表不分页
     * @param baseCellInfo
     * @return
     */
    PageInfo<BaseCellInfo> getAllList(Page page, BaseCellInfo baseCellInfo);

    /**
     * 查询列表
     * @param baseCellInfo
     * @return
     */
    List<BaseCellInfo> getList(BaseCellInfo baseCellInfo);

    /**
     * 根据自然懂编号查询单元列表   用来填充下拉框
     * @param buildNo
     * @return
     */
    List<Map<String,String>> getCellListByBuildNo(String buildNo);

    /**
     * 单元列表分地下室还是车库等
     * @param buildNo
     * @return
     */
    List<BaseCellInfoList> getListInfo(String buildNo);
    /**
     * 单元变更
     * @param baseCellInfo
     * @return
     */
    CommonResult updateToSave(List<BaseCellInfo> baseCellInfo) throws Exception;
    /**
     * 房屋结构变更分页
     * @param page
     * @param baseCellInfo
     * @return
     */
    PageInfo<BaseCellInfo> getAllListAndDetail(Page page, BaseCellInfo baseCellInfo);

    /**
     * 结构变更更单元信息
     * @param buildNo
     * @param reqNo
     * @return
     */
     List<BaseCellInfoList> getListInfoUpdate(String buildNo,String reqNo) ;
    }
